package cn.itrigger.dynamic.sql.condition;

/**
 * @author admin
 * @date 2018/9/20
 **/
public interface ConditionVisitor<T,R> {

    public R visit(AbstractSingleValueCondition<T> condition);

    public R visit(AbstractListValueCondition<T> condition);

    public R visit(AbstractNoValueCondition<T> condition);

    public R visit(AbstractTwoValueCondition<T> condition);

    public R visit(AbstractSubselectCondition<T> condition);

    public R visit(AbstractColumnComparisonCondition<T> condition);
}
